package com.fzkj.shejimoshi.proxy;

/**
 * @DESCRIPTION: TODO
 * 不继承Subject 效果也是可以的
 * 继承逻辑更清晰吧，需要对哪些方法增强，同时客户端调用方便，不需要更换调用方法
 * @AUTHOR: AnotherOne
 * @DATE: 2021/8/16 10:56
 */
public class Proxy implements Subject {

    private RealSubject realSubject;

    @Override
    public void request() {
        if (realSubject == null)
            realSubject = new RealSubject();
        preProxy();
        realSubject.request();
        postProxy();
    }

    private void preProxy(){
        System.out.println("=== 代理前置处理 ===");
    }

    private void postProxy(){
        System.out.println("=== 代理后置处理 ===");
    }
}
